home *** CD-ROM | disk | FTP | other *** search
/ IRIX 6.2 Development Libraries / SGI IRIX 6.2 Development Libraries.iso / dist / complib.idb / usr / share / catman / p_man / cat3 / complib / dlarfb.z / dlarfb
Text File  |  1996-03-14  |  4KB  |  133 lines

  1.  
  2.  
  3.  
  4. DDDDLLLLAAAARRRRFFFFBBBB((((3333FFFF))))                                                          DDDDLLLLAAAARRRRFFFFBBBB((((3333FFFF))))
  5.  
  6.  
  7.  
  8. NNNNAAAAMMMMEEEE
  9.      DLARFB - applie a real block reflector H or its transpose H' to a real m
  10.      by n matrix C, from either the left or the right
  11.  
  12. SSSSYYYYNNNNOOOOPPPPSSSSIIIISSSS
  13.      SUBROUTINE DLARFB( SIDE, TRANS, DIRECT, STOREV, M, N, K, V, LDV, T, LDT,
  14.                         C, LDC, WORK, LDWORK )
  15.  
  16.          CHARACTER      DIRECT, SIDE, STOREV, TRANS
  17.  
  18.          INTEGER        K, LDC, LDT, LDV, LDWORK, M, N
  19.  
  20.          DOUBLE         PRECISION C( LDC, * ), T( LDT, * ), V( LDV, * ), WORK(
  21.                         LDWORK, * )
  22.  
  23. PPPPUUUURRRRPPPPOOOOSSSSEEEE
  24.      DLARFB applies a real block reflector H or its transpose H' to a real m
  25.      by n matrix C, from either the left or the right.
  26.  
  27.  
  28. AAAARRRRGGGGUUUUMMMMEEEENNNNTTTTSSSS
  29.      SIDE    (input) CHARACTER*1
  30.              = 'L': apply H or H' from the Left
  31.              = 'R': apply H or H' from the Right
  32.  
  33.      TRANS   (input) CHARACTER*1
  34.              = 'N': apply H (No transpose)
  35.              = 'T': apply H' (Transpose)
  36.  
  37.      DIRECT  (input) CHARACTER*1
  38.              Indicates how H is formed from a product of elementary reflectors
  39.              = 'F': H = H(1) H(2) . . . H(k) (Forward)
  40.              = 'B': H = H(k) . . . H(2) H(1) (Backward)
  41.  
  42.      STOREV  (input) CHARACTER*1
  43.              Indicates how the vectors which define the elementary reflectors
  44.              are stored:
  45.              = 'C': Columnwise
  46.              = 'R': Rowwise
  47.  
  48.      M       (input) INTEGER
  49.              The number of rows of the matrix C.
  50.  
  51.      N       (input) INTEGER
  52.              The number of columns of the matrix C.
  53.  
  54.      K       (input) INTEGER
  55.              The order of the matrix T (= the number of elementary reflectors
  56.              whose product defines the block reflector).
  57.  
  58.  
  59.  
  60.  
  61.  
  62.  
  63.                                                                         PPPPaaaaggggeeee 1111
  64.  
  65.  
  66.  
  67.  
  68.  
  69.  
  70. DDDDLLLLAAAARRRRFFFFBBBB((((3333FFFF))))                                                          DDDDLLLLAAAARRRRFFFFBBBB((((3333FFFF))))
  71.  
  72.  
  73.  
  74.      V       (input) DOUBLE PRECISION array, dimension
  75.              (LDV,K) if STOREV = 'C' (LDV,M) if STOREV = 'R' and SIDE = 'L'
  76.              (LDV,N) if STOREV = 'R' and SIDE = 'R' The matrix V. See further
  77.              details.
  78.  
  79.      LDV     (input) INTEGER
  80.              The leading dimension of the array V.  If STOREV = 'C' and SIDE =
  81.              'L', LDV >= max(1,M); if STOREV = 'C' and SIDE = 'R', LDV >=
  82.              max(1,N); if STOREV = 'R', LDV >= K.
  83.  
  84.      T       (input) DOUBLE PRECISION array, dimension (LDT,K)
  85.              The triangular k by k matrix T in the representation of the block
  86.              reflector.
  87.  
  88.      LDT     (input) INTEGER
  89.              The leading dimension of the array T. LDT >= K.
  90.  
  91.      C       (input/output) DOUBLE PRECISION array, dimension (LDC,N)
  92.              On entry, the m by n matrix C.  On exit, C is overwritten by H*C
  93.              or H'*C or C*H or C*H'.
  94.  
  95.      LDC     (input) INTEGER
  96.              The leading dimension of the array C. LDA >= max(1,M).
  97.  
  98.      WORK    (workspace) DOUBLE PRECISION array, dimension (LDWORK,K)
  99.  
  100.      LDWORK  (input) INTEGER
  101.              The leading dimension of the array WORK.  If SIDE = 'L', LDWORK
  102.              >= max(1,N); if SIDE = 'R', LDWORK >= max(1,M).
  103.  
  104.  
  105.  
  106.  
  107.  
  108.  
  109.  
  110.  
  111.  
  112.  
  113.  
  114.  
  115.  
  116.  
  117.  
  118.  
  119.  
  120.  
  121.  
  122.  
  123.  
  124.  
  125.  
  126.  
  127.  
  128.  
  129.                                                                         PPPPaaaaggggeeee 2222
  130.  
  131.  
  132.  
  133.